Skip to content

Remove all_valid/all_invalid from Validity#6926

Merged
gatesn merged 4 commits intodevelopfrom
ngates/validity-ctx
Mar 12, 2026
Merged

Remove all_valid/all_invalid from Validity#6926
gatesn merged 4 commits intodevelopfrom
ngates/validity-ctx

Conversation

@gatesn
Copy link
Contributor

@gatesn gatesn commented Mar 12, 2026

These functions were performing hidden compute without an ExecutionCtx.
I have also removed PartialEq, since that was executing arrays!

There now exists a Validity::mask_eq (similar to array_eq) which will evaluate only if necessary

gatesn added 2 commits March 12, 2026 13:57
Signed-off-by: Nicholas Gates <nick@nickgates.com>
Signed-off-by: Nicholas Gates <nick@nickgates.com>
@gatesn gatesn requested a review from robert3005 March 12, 2026 18:09
.unsliced_validity
.slice(array.slice_start()..array.slice_stop())?
.all_valid(sliced_len)?;
let has_nulls = !matches!(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have to change the comment? This previously was specifically checking the sliced range

@robert3005
Copy link
Contributor

Did we not care in the other cases? I think I miss the place where ZSTD and Duckdb exporter enforced a tighter constraint. Maybe the change here is to ask for validity_mask?

Signed-off-by: Nicholas Gates <nick@nickgates.com>
@gatesn gatesn requested a review from robert3005 March 12, 2026 22:03
@gatesn gatesn added the changelog/break A breaking API change label Mar 12, 2026
Signed-off-by: Nicholas Gates <nick@nickgates.com>
@gatesn gatesn merged commit c870564 into develop Mar 12, 2026
54 checks passed
@gatesn gatesn deleted the ngates/validity-ctx branch March 12, 2026 23:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/break A breaking API change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants